Метод removeEventListener()
Пример
Удалить событие "mousemove", которое было прикреплено с помощью метода addEventListener():
// Прикрепите обработчик событий к <div>
document.getElementById("myDIV").addEventListener("mousemove", myFunction);
// Удалите обработчик событий из <div>
document.getElementById("myDIV").removeEventListener("mousemove", myFunction);
Попробуйте сами »
Определение и использование
Метод removeEventListener() удаляет обработчик событий, который был присоединен к методу addEventListener().
Примечание: Чтобы удалить обработчики событий, функция, указанная с помощью метода addEventListener(), должна быть внешней функцией, как в приведенном выше примере (myFunction).
Анонимные функции, такие как "element.removeEventListener("event", function(){ myScript });" не будут работать.
Поддержка браузера
Цифры в таблице указывают первую версию браузера, которая полностью поддерживает этот метод.
Метод | |||||
---|---|---|---|---|---|
removeEventListener() | 1.0 | 9.0 | 1.0 | 1.0 | 7.0 |
Синтаксис
element.removeEventListener(event, function, useCapture)
Параметр значений
Параметр | Описание |
---|---|
event | Требуемый. Строка, указывающая имя удаляемого события. Примечание: Не используйте префикс "on". Например, используйте "click" вместо "onclick". Совет: Для получения списка всех событий HTML DOM посмотрите полный Справочник объекта события HTML DOM. |
function | Требуемый. Указывает функцию для удаления. |
useCapture |
Необязательный. Логическое значение, указывающее фазу события для удаления обработчика событий. Возможные значения:
|
Технические детали
Версия DOM | События DOM уровень 2 |
---|---|
Возвращаемое значение: | Нет возвращаемого значения |
Список изменений: | Параметр useCapture стал необязательным в Firefox 6 и Opera 12.0 (всегда был необязательным для Chrome, IE и Safari) |
Еще примеры
Пример
Для браузеров, которые не поддерживают метод removeEventListener(), можно использовать метод detachEvent().
Этот пример демонстрирует кроссбраузерное решение:
var x = document.getElementById("myDIV");
if (x.removeEventListener) { // Для всех основных браузеров, кроме IE8 и более ранних версий
x.removeEventListener("mousemove", myFunction);
} else if (x.detachEvent) { // Для IE 8 и более ранних версий
x.detachEvent("onmousemove", myFunction);
}
Попробуйте сами »
Связанные страницы
Учебник JavaScript: HTML DOM EventListener
Справочник JavaScript: document.removeEventListener()